#pragma once
#ifndef TOOLS_TESTVIEWER_H
#define TOOLS_TESTVIEWER_H
//------------------------------------------------------------------------------
/**
    @class Tools::TestViewer
    
    Nebula3 test viewer app.

    (C) 2006 Radon Labs GmbH
*/
#include "appgame/gameapplication.h"
#include "features/physicsfeature/physicsfeatureunit.h"

namespace Db
{
    class Server;
}

//------------------------------------------------------------------------------
namespace Tools
{
class TestGameApplication : public App::GameApplication
{
    DeclareSingleton(TestGameApplication);   
public:
    /// constructor
    TestGameApplication();
    /// destructor
    virtual ~TestGameApplication();
    
protected:
    /// setup application state handlers
    virtual void SetupStateHandlers();
    /// setup game features
    virtual void SetupGameFeatures();
    /// cleanup game features
    virtual void CleanupGameFeatures(); 

private:
    Ptr<PhysicsFeature::PhysicsFeatureUnit> physicsFeature;
};

} // namespace Test
//------------------------------------------------------------------------------
#endif
